ApplicationSet Specification

The following describes all the available fields of an ApplicationSet:

  1. apiVersion: argoproj.io/v1alpha1
  2. kind: ApplicationSet
  3. metadata:
  4. name: test-hello-world-appset
  5. namespace: argocd
  6. spec:
  7. # See docs for available generators and their specs.
  8. generators:
  9. - list:
  10. elements:
  11. - cluster: https://kubernetes.default.svc
  12. # Determines whether go templating will be used in the `template` field below.
  13. goTemplate: false
  14. # Optional list of go templating options, see https://pkg.go.dev/text/template#Template.Option
  15. # This is only relevant if `goTemplate` is true
  16. goTemplateOptions: ["missingkey="]
  17. # These fields are identical to the Application spec.
  18. template:
  19. metadata:
  20. name: test-hello-world-app
  21. spec:
  22. project: my-project
  23. # This sync policy pertains to the ApplicationSet, not to the Applications it creates.
  24. syncPolicy:
  25. # Determines whether the controller will delete Applications when an ApplicationSet is deleted.
  26. preserveResourcesOnDeletion: false
  27. # Alpha feature to determine the order in which ApplicationSet applies changes.
  28. strategy:
  29. # This field lets you define fields which should be ignored when applying Application resources. This is helpful if you
  30. # want to use ApplicationSets to create apps, but also want to allow users to modify those apps without having their
  31. # changes overwritten by the ApplicationSet.
  32. ignoreApplicationDifferences:
  33. - jsonPointers:
  34. - /spec/source/targetRevision
  35. - name: some-app
  36. jqPathExpressions:
  37. - .spec.source.helm.values